﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ShExcelLib
{
    /// <summary>
    /// 读取配置
    /// </summary>
    public class ReadConfig
    {
        /// <summary>
        /// 所要读取的子表。如果同时指定有效的SheetIndex，则优先取SheetName
        /// </summary>
        public string SheetName { get; set; }

        /// <summary>
        /// 所要读取的子表，当>=0时有效
        /// </summary>
        public int SheetIndex { get; set; } = -1;

        /// <summary>
        /// 表头所在行号，如果指定且>0，则使用该行的数据构成表头
        /// </summary>
        public int HeadRowNum { get; set; } = -1;

        /// <summary>
        /// 指定数据开始的行号，默认为2
        /// </summary>
        public int DataRowNum { get; set; } = 2;

        /// <summary>
        /// 指定表头，每一项作为一个表头，将对应A , B ,C , D...列，
        /// 空字符串的项将被忽略，
        /// 同时设置HeadRowNum的话，则优先于HeadRowNum
        /// 如即不指定ColumnNames也不指定HeadRowNum，则直接使用A, B, C,D 等Excel列名为字段名
        /// </summary>
        public string[] ColumnNames { get; set; }

        /// <summary>
        /// 指定日期格式，不包括时间部分。程序会根据数据是否是0点整来决定是否包含TimeFormat，以获得更适合的结果格式
        /// </summary>
        public string DateFormat { get; set; } = "yyyy-MM-dd";

        /// <summary>
        /// 指定时间格式
        /// </summary>
        public string TimeFormat { get; set; } = "HH:mm:ss";
    }
}
